$(document).ready(function(){
	isPlaceholder();
	setRequireTips();
	setToNum();
	setToFloat();
});
$.fn.serializeObject = function()    
{
 var o = {};
 var a = this.serializeArray();    
 $.each(a, function() {    
	 if (o[this.name]) {    
		if (!o[this.name].push) {    
			o[this.name] = [o[this.name]];    
		}
		o[this.name].push(this.value || '');    
	 }else{
		o[this.name] = this.value || '';    
	 }
 });
 return o;    
};
function clearNoNum(obj){
	//先把非数字的都替换掉，除了数字和.
	//obj.value = obj.value.replace(/[^\d]/g,"");
	obj.value = obj.value.replace(/[^\d.-]/g,"");
	//必须保证第一个为数字而不是.
	obj.value = obj.value.replace(/^\./g,"");
	//保证只有出现一个.而没有多个.
	obj.value = obj.value.replace(/\.{2,}/g,".");
	//保证.只出现一次，而不能出现两次以上
	obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");
}
function clearNoNumFloat(obj){
	//先把非数字的都替换掉，除了数字和.
	obj.value = obj.value.replace(/[^\d.-]/g,"");
	//必须保证第一个为数字而不是.
	obj.value = obj.value.replace(/^\./g,"");
	//保证只有出现一个.而没有多个.
	obj.value = obj.value.replace(/\.{2,}/g,".");
	//保证.只出现一次，而不能出现两次以上
	obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");
}
function setToNum(){
	$("input.num").each(function(){
		$(this).live("keyup",function(){
			var v=$(this).val();
			v=v.replace(/[^\d.-]/g,"");
			v=v.replace(/^\./g,"");
			v=v.replace(/^\./g,"");
			v=v.replace(".","$#$").replace(/\./g,"").replace("$#$",".");
			v=v.replace(".","");
			$(this).val(v);
		});
	});
}
function setToFloat(){
	$("input.float").each(function(){
		$(this).live("keyup",function(){
			var v=$(this).val();
			v=v.replace(/[^\d.-]/g,"");
			v=v.replace(/^\./g,"");
			v=v.replace(/\.{2,}/g,".");
			v=v.replace(".","$#$").replace(/\./g,"").replace("$#$",".");
			$(this).val(v);
		});
	});
}
function setRequireTips(){
	$(".require").each(function(){
		$(this).after('&nbsp;<span style="color:#F00;">*</span>');
	});
}
function extClear(){
	$(".clear").each(function(){
		$(this).val("");
	});
}

//设置table.datalist的tr背景
function settablelistbg(){
	$("table.datalist tr").mouseenter(function(){
		$("table.datalist tr").removeClass("hover");
		$(this).addClass("hover");
	});
	
	$("table.datalist tr").mouseleave(function(){
		$(this).removeClass("hover");
	});
}


//JS方法获得当前的对象
function $byId(objectId){
	return reobj=(typeof(objectId)=="object") ? objectId : document.getElementById(objectId);
}
//JQuery获取值
function getValueById(id){
	return $("#"+id).val()!=$("#"+id).attr("placeholder")?$("#"+id).val():"";
}
function trim(str) {  
	var patrn = /(^\s+|\s$)/g;  
	return str.replace(patrn, "");  
};
//判断浏览器是否支持 placeholder属性
function isPlaceholder(){
	var input = document.createElement('input');
	return 'placeholder' in input;
}
if (!isPlaceholder()) {//不支持placeholder 用jquery来完成
	$(document).ready(function() {
	    if(!isPlaceholder()){
			//把input绑定事件 排除password框
	        $("input").not("input.placeholder[type='password']").each(
	            function(){
	                if($(this).val()=="" && $(this).attr("placeholder")!=""){
	                    $(this).val($(this).attr("placeholder"));
						$(this).css("color","#666");
						$(this).focus(function(){
	                        if($(this).val()==$(this).attr("placeholder")){
								$(this).val("");
								$(this).css("color","#000");
							}
	                    });
	                    $(this).blur(function(){
	                        if($(this).val()==""){
								$(this).val($(this).attr("placeholder"));
								$(this).css("color","#666");	
							}
	                    });
	                }
	        });
			//对password框的特殊处理1.创建一个text框 2获取焦点和失去焦点的时候切换
			$("input.placeholder[type='password']").each(function(){
				var pwdId=$(this).attr("id");
				var pwdVal		= $(this).attr('placeholder');
				var pwdId=$(this).attr('id');
				$(this).after('<input type="text" style="color:#666;" class="'+$(this).attr("class")+'" value='+pwdVal+' autocomplete="off" />');
				$(this).next("input").show();
				$(this).hide();
				
				$(this).next("input").focus(function(){
					$(this).hide();
					$(this).prev("input").show();
					$(this).prev("input").focus();
				});
				
				$(this).blur(function(){
					if($(this).val()==""){
						$(this).next("input").show();
						$(this).hide();
					}
				});
			});
	    }
	});
	
}
function AddFavorite() {//加入收藏夹
	try {
		window.external.addFavorite(window.location.href, document.title);
	}catch (e) {
		try {
			window.sidebar.addPanel(document.title, window.location.href, "");
		}catch (e) {
			alert("\n\t对不起，您的浏览器不支持此操作！\n\n\t请您使用菜单栏或ctrl+D收藏本站。");
		}
	}
}

function addFavorite(url, title) {//加入收藏夹
	try {
		window.external.addFavorite(url, title);
	}catch (e) {
		try {
			window.sidebar.addPanel(title, url, "");
		}catch (e) {
			alert("\n\t对不起，您的浏览器不支持此操作！\n\n\t请您使用菜单栏或ctrl+D收藏本站。");
		}
	}
}
//正则表达式检验字符串
function regExpCheckl(str,filter) {
	if (filter.test(str)){
		return true;
	}
	else {
		return false;
	}
}
//去除空白
function strTrim(str){  
	var patrn = /(^\s+|\s$)/g;  
	return str.replace(patrn, "");  
}
//|	操作cookie的方法,days为要保存的天数
function setCookie(name,value,days) {
	var exp  = new Date();
	exp.setTime(exp.getTime() + days*24*60*60*1000);
	document.cookie = name + "="+ encodeURI(value) + ";path=/;expires=" + exp.toGMTString();

}
function getCookie(name) {
	var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
	if(arr != null){
		if (decodeURI(arr[2]) == null){
			return ;
		}else{
			return decodeURI(arr[2]);
		}
	}else{
		return ;
	}
}
function delCookie(name){
	var exp = new Date();
	exp.setTime(exp.getTime() - 1);
	var cval=getCookie(name);
	if(cval!=null) document.cookie= name + "="+cval+";path=/;expires="+exp.toGMTString();
}
/*以删除所有cookie*/
function clearCookie()
{
	var strCookie=document.cookie;
	var arrCookie=strCookie.split("; "); // 将多cookie切割为多个名/值对
	for(var i=0;i <arrCookie.length;i++)
	{ // 遍历cookie数组，处理每个cookie对
		var arr=arrCookie[i].split("=");
		if(arr.length>0)
		delCookie(arr[0]);
	}
}
function v_in_array(v,arr){
	for(var i=0;i<arr.length;i++){
		if(v==arr[i]){
			return true;
		}
	}
	return false;
}

/**
 * 全选checkbox,注意：标识checkbox id固定为为check_box
 * @param string name 列表check名称,如 uid[]
 */
function selectall(name){
	if ($("#check_box").attr("checked")=='checked') {
		$("input[name='"+name+"']").each(function() {
  			$(this).attr("checked","checked");
		});
	}else {
		$("input[name='"+name+"']").each(function() {
  			$(this).removeAttr("checked");
		});
	}
}
//获取多选项值
function get_select_val(name){
	var str="0";
	$("input[name='"+name+"[]']").each(function(){
		if($(this).attr("checked")=="checked"){
			str+=","+$(this).val();
		}
	});
	
	return str;
}
//全选
function select_checked_all(name){
	$("input[name='"+name+"']").each(function() {
		$(this).attr("checked","checked");
	});
}
function btn_select_anti(name){
	$("input[name='"+name+"']").each(function(){
		if($(this).attr("checked")=="checked"){
			$(this).removeAttr("checked");
		}else{
			$(this).attr("checked","checked");
		}
	});
}




//验证规则，可在此处扩展
function check_verify(verify,value){

	/*是否为空*/
	if(value=="" || typeof(value)=="undefined"){
		return false;
	}

	switch(verify){

		/*纯数字*/
		case 'number':
			reg =/^[0-9]*$/;
			if( !reg.test(value) ){
				return false;
			}else{
				return true;
			}
			break;

		/*金钱*/
		case 'money':
			reg =/^[\-\+]?((([0-9]{1,3})([,][0-9]{3})*)|([0-9]+))?([\.]([0-9]+))?$/;
			if( !reg.test(value) ){
				return false;
			}else{
				return true;
			}
			break;

		/*手机号*/
		case 'phone':
			reg =/^[0-9]{11}$/;
			if( !reg.test(value) ){
				return false;
			}else{
				return true;
			}
			break;

		/*身份证号*/
		case 'phone':
			reg =/^[0-9]{11}$/;
			if( !reg.test(value) ){
				return false;
			}else{
				return true;
			}
			break;

		/*无验证规则属性则检查必填项**/
		default:
			if(value=="" || typeof(value)=="undefined"){
				return false;
			}else{
				return true;
			}
			break;

	}

}

/**检查必填项
*@param string form_id form表单名
*@param string input_ck 需要验证的表单class名
*@return bool 
*/
function ck_input_require(form_id,input_ck){
	var flag=true;
	
	//判断是否指定需要验证的表单class名
	if( typeof(input_ck)=="undefined" ){
		input_ck = 'require_ck';
	}

	$("#"+form_id+' .'+input_ck).each(function(){
		var align="right";

		var type=$(this).attr("type");

		var verify = $(this).attr('verify');//验证规则属性，在表单中没有定义该属性则检查是否为空值或没有选
		
		if(type=="radio"){
			var val=$('input:radio[name="'+$(this).attr("name")+'"]:checked').val();
			align="top";
		}

		if(type=="text"){

			var val=$(this).val();

		}
		
		//if(val=="" || typeof(val)=="undefined"){
		if( !check_verify(verify,val) ){
			dialog({
				id:"tips",
				align: align,
				content: $(this).attr("tips"),
				quickClose: true
			}).show($byId($(this).attr("id")));
			var top=$(this).offset().top-100;
			$('body,html').animate({scrollTop:top},500);
			if(type=="text"){
				$(this).focus();
			}
			flag=false;
			return false;
		}
	});
	return flag;
}

/**错误弹框
*@param obj 需要提示表单元素，
*@param cont 提示的内容
*@param align 位置
*/
function error_pop(obj,cont,align){
	dialog({
		id:"tips",
		align: align,
		content: cont,
		quickClose: true
	}).show($byId($(obj).attr("id")));
	var top=$(obj).offset().top-100;
	$('body,html').animate({scrollTop:top},500);
	var type=$(obj).attr("type");
	if(type=="text"){
		$(this).focus();
	}
	return false;
}
function jsonToString(json){
	var str="{";
	var i=0;
	for(var k_1 in json){
		if(i>0){
			str+=',';
		}
		str+=k_1+':{';
		var i_2=0;
		for(var k_2 in json[k_1]){
			if(i_2>0){
				str+=',';
			}
			str+='"'+k_2+'":"'+json[k_1][k_2]+'"';
			i_2++;
		}
		str+='}';
		i++;
	}
	str+="}";
	return str;
}




/**
 *	标计算收益
 *  total_interest int 总利息
 *  amount int 投资金额
 *  borrow_money int 募集金额
 *  return int 收益
 * */
function calculateProfit(rate,amount,duration){
	var interest = 0;
	interest = amount*rate/360*duration/100;
	return interest.toFixed(2);
}